package com.cg.common;

/**
 * 基于ThreadLocal封装工具类，用户保存和获取当前登录用户id
 */
public class BaseContext {
    
    private static ThreadLocal<Long> threadLocal = new ThreadLocal<>();
    
    /**
     * 设置当前线程的线程局部变量的值
     * @param id 用户ID
     */
    public static void setCurrentId(Long id) {
        threadLocal.set(id);
    }
    
    /**
     * 返回当前线程的线程局部变量的值
     * @return 用户ID
     */
    public static Long getCurrentId() {
        return threadLocal.get();
    }
    
    /**
     * 移除当前线程的线程局部变量的值
     */
    public static void removeCurrentId() {
        threadLocal.remove();
    }
}
